import http from '@/api/http';

/**
 * 分页查询入党志愿书列表
 * @param {Object} query 查询条件
 * @param {Number} pageNum 页码
 * @param {Number} pageSize 每页大小
 * @returns {Promise} 入党志愿书列表及分页信息
 */
export function getVolunteerList(query, pageNum = 1, pageSize = 10) {
  return http.post(`/party/volunteer/selectPage?pageNum=${pageNum}&pageSize=${pageSize}`, query);

}

/**
 * 获取入党志愿书总数
 * @param {Object} data - 查询条件
 * @param {string} [data.name] - 申请人姓名，支持模糊查询
 * @param {string} [data.status] - 状态，精确匹配
 * @returns {Promise} - 入党志愿书总数，包含HTTP状态码
 */
export const getVolunteerCount = (data) => {
  return http.post('/party/volunteer/selectCount', data);
};


/**
 * 根据ID获取入党志愿书详情
 * @param {Number} id 入党志愿书ID
 * @returns {Promise} 入党志愿书详情
 */
export function getVolunteerById(id) {
  return http.post(`/party/volunteer/detail?id=${id}`);
}

/**
 * 更新入党志愿书信息（包括审核）
 * @param {Object} data 志愿书信息（包含id, status, review等字段）
 * @returns {Promise} 更新结果
 */
export function updateVolunteer(data) {
  return http.put('/party/volunteer/update', data);
}

/**
 * 删除入党志愿书
 * @param {Number} id 入党志愿书ID
 * @returns {Promise} 操作结果
 */
export function deleteVolunteer(id) {
  return http.delete(`/party/volunteer/${id}`);
} 